package com.xingkeduo.pojo.table;

import com.xingkeduo.util.pojo.base.BaseTable;
import com.xingkeduo.util.pojo.enums.RecruitSourceEnum;
import com.xingkeduo.util.pojo.enums.WorkYearEnum;
import com.xingkeduo.util.pojo.enums.YesNoEnum;
import org.apache.ibatis.type.Alias;

import java.util.List;

/**
 * 求职者工作属性类
 *
 * @author 高杰
 * @time 2018年12月25日 下午5:02:18
 * @description
 */
@Alias("JobseekerJob")
public class JobseekerJobTO extends BaseTable<JobseekerJobTO> {
    private WorkYearEnum years;
    private String salary;
    private String referrer;
    private RecruitSourceEnum source;
    private String contactName;
    private String contactPhone;
    private long cityId;
    private YesNoEnum isStays;
    private String wechatName;

    private List<JobseekerJobDetailTO> details;

    public String getWechatName() {
        return wechatName;
    }

    public JobseekerJobTO setWechatName(String wechatName) {
        this.wechatName = wechatName;
        return this;
    }

    public WorkYearEnum getYears() {
        return years;
    }

    public JobseekerJobTO setYears(WorkYearEnum years) {
        this.years = years;
        return this;
    }

    public String getSalary() {
        return salary;
    }

    public JobseekerJobTO setSalary(String salary) {
        this.salary = salary;
        return this;
    }

    public String getReferrer() {
        return referrer;
    }

    public JobseekerJobTO setReferrer(String referrer) {
        this.referrer = referrer;
        return this;
    }

    public RecruitSourceEnum getSource() {
        return source;
    }

    public JobseekerJobTO setSource(RecruitSourceEnum source) {
        this.source = source;
        return this;
    }

    public String getContactName() {
        return contactName;
    }

    public JobseekerJobTO setContactName(String contactName) {
        this.contactName = contactName;
        return this;
    }

    public String getContactPhone() {
        return contactPhone;
    }

    public JobseekerJobTO setContactPhone(String contactPhone) {
        this.contactPhone = contactPhone;
        return this;
    }

    public long getCityId() {
        return cityId;
    }

    public JobseekerJobTO setCityId(long cityId) {
        this.cityId = cityId;
        return this;
    }

    public YesNoEnum getIsStays() {
        return isStays;
    }

    public JobseekerJobTO setIsStays(YesNoEnum isStays) {
        this.isStays = isStays;
        return this;
    }

    public List<JobseekerJobDetailTO> getDetails() {
        return details;
    }

    public JobseekerJobTO setDetails(List<JobseekerJobDetailTO> details) {
        this.details = details;
        return this;
    }

    public JobseekerJobTO copy(CraftsmanJobTO craftsmanJob) {
        return this.setContactName(craftsmanJob.getContactName()).setContactPhone(craftsmanJob.getContactPhone());
    }

    @Override
    public String toString() {
        return "JobseekerJobTO{" +
                "years=" + years +
                ", salary='" + salary + '\'' +
                ", referrer='" + referrer + '\'' +
                ", source=" + source +
                ", contactName='" + contactName + '\'' +
                ", contactPhone='" + contactPhone + '\'' +
                ", cityId=" + cityId +
                ", isStays=" + isStays +
                ", wechatName='" + wechatName + '\'' +
                ", details=" + details +
                '}';
    }
}
